import java.util.Scanner;

public class MaxDivValue {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            // 读取 N 和 K
            int N = scanner.nextInt();
            int K = scanner.nextInt();
            int[] array = new int[N];
            // 读取数组元素
            for (int i = 0; i < N; i++) {
                array[i] = scanner.nextInt();
            }
            // 关闭 scanner
            scanner.close();

            // 初始化最大 Dk 值
            int maxDk = 0;
            // 遍历数组，计算每个 K 区间的最大差值
            for (int i = 0; i <= N - K; i++) {
                int min = array[i]; // 当前区间的最小值
                int max = array[i]; // 当前区间的最大值
                // 找到当前 K 区间的最小值和最大值
                for (int j = i; j < i + K; j++) {
                    if (array[j] < min) {
                        min = array[j];
                    }
                    if (array[j] > max) {
                        max = array[j];
                    }
                }
                // 计算当前 K 区间的最大差值，并更新 maxDk
                int currentDk = Math.abs(max - min);
                if (currentDk > maxDk) {
                    maxDk = currentDk;
                }
            }
            // 输出最大 Dk 值
            System.out.println(maxDk);
        }
    }

